package com.css.fxfzfxqh.modules.reportmanagement.service;

import com.css.fxfzfxqh.modules.reportmanagement.entity.ReportCommonData;
import com.deepoove.poi.policy.RenderPolicy;

import java.util.List;
import java.util.Map;

public interface ExportReportDataService {

    //查询任务对象
    Map<String,Object> getTaskObjById(String taskId);

    //查询1、	建筑物单体数据
    List<ReportCommonData> getBuildingIndividualCal(String taskId);

    //建筑物单体数据 2)	各个设防情况下的建筑面积
    List<ReportCommonData> getBuildingIndividualSfqkCal(String taskId);

    //查询2、	建筑物格网数据
    List<ReportCommonData> getGridDataCal(String taskId);

    //建筑物格网数据  各个设防情况下的建筑面积
    List<ReportCommonData> getGridDataSfqkCal(String taskId);

    //1.1.2 建筑物重置单价
    List<Map<String,Object>> getFxqhBuildingPriceTask(String taskId);

    //生成word报告文档
    //Map<String, String> createWordReport(List<String> keySet, Map<String, Object> paramMap,String modelName,String attachPath,String fileDirId);

    //生产word报告GenerateWord
    Map<String, String> generateWordReportData(String taskId,String bgId) throws Exception;

    //2 建筑物地震易损性  地震结构易损性分析-用的易损性数据导出到表格
    List<Map<String,Object>> getBuildingJzwysxDataList(String taskId);

    //03确定评估-设定地震影响场数据生成
    Map<String, String> earthquakeEffectsWordReportData(String taskId ,String bgId)throws Exception;

    //02确定评估-四个概率水准
    Map<String, String>  conditionWordReportData(String taskId,String bgId)throws Exception;

    //04概率评估-发生概率
    Map<String, String>  probabilityWordReportData(String taskId,String bgId,String typeId)throws Exception;

    Map<String, String>  probabilityWordReportData1(String taskId,String bgId,String typeId)throws Exception;

    void buildCommonReportParam(Map<String, Object> paramMap, Map<String,RenderPolicy> policyMap, String taskId,Map<String,Object> taskObj,String inputNum,String flag) throws Exception;

    Map<String, String> createWordReport(Map<String,RenderPolicy> policyMap, Map<String, Object> paramMap, String modelName, String attachPath, String fileDirId);
}
